|
![](/i/fill.gif) |
"Chris B" <nom### [at] nomail com> wrote:
> Your instructions don't seem to say how to get a rainbow to appear. They
> just seem to describe the options for tailoring it once you get to see it.
> Do you have a simple scene file to serve as an example for getting the
> default one to appear?
>
> The include file seems to add a couple of spheres to the scene, but I placed
> a camera and a light source at the default location specified in the include
> file and got a black screen. I changed the background to white and got a
> white screen, so I guess it needs something specific in the scene file to
> make the rainbow visible.
>
> BTW. You shouldn't necessarily be discouraged by a lack of feedback. The
> POV-Ray object collection has had over 20,000 downloads since it started a
> year ago, but there's been very little feedback.
>
> Regards,
> Chris B.
Sorry, that was my fault. Here's a simple scene file with nothing but a plane,
light and the rainbow. Don't bother when the scene takes some time to parse.
This is because the include file is nothing else than a 'rainbow raytracer'
which is calculating the reflection, rafraction and dispersion of light rays in
a water droplet. The couple of spheres you mentioned is just the container
object for the media. Don't bother your head about this :)
So here's a little bit of code for you:
// only the following two identifiers declared before including
// the "rainbow.inc" file are really necessary to see the rainbow
#declare camera_location = <0, 3, 0>;
#declare rb_light_location = <500, 50, -500>;
#declare rb_light_c = rgb <1, 1, 1>; // a color to be multiplied
// with the rainbow color bands
// (color of the virtual light source which is casting the rainbow)
camera {
location camera_location // this setting is obligatory for getting
// a correct result
look_at <0, 3, 1>
angle 30
}
light_source {rb_light_location color rb_light_c} // not really necessary,
// because the rainbow media is emitting, not scattering
plane {y, 0 pigment {color rgb 1}}
background {color rgb <0.01, 0.05, 0.15>}
// the following lines are just for playing around with and testing speed and
// quality of the resulting image
#declare secondary_rb = on;
#declare rb_distance = 40;
#declare rb_brightness = 0.75;
#declare rb_type = 2; // slower but more accurate than type 1
// (type 1 is very good for testing purposes, because it renders really fast!)
#declare rb_spectrum_samples = 50; // number of samples in the wave spectrum
#declare rb_intervals = 20; // number of color maps put together
// to create the rainbow
#declare rb_c_map_samples = 80; // samples in a single color map
#declare rb_area_light_angle = 0.15; // faking an area light source for
// obtaining a smooth rainbow
#declare rb_area_light_samples = 10;
#include "rainbow.inc"
Post a reply to this message
|
![](/i/fill.gif) |